package Practica2ej11;

public class DispositivoElectronico {
	/* Clase que identifica al dispositivo conectado */
	Comunicacion comDisp;
	/* Define el tipo de comunicacion por la cual se va a conectar y a que velocidad transmite */
	double velocidad;
	
	public DispositivoElectronico(double vel){
		/* Inicializacion del dispositivo */
		this.velocidad = vel;
	}
	
	public Comunicacion getComunicacion(){
		/* Devuelve el tipo de comunicacion */
		return this.comDisp;
	}
	
	public void setComunicacion(Comunicacion otroComDisp){
		/* Setea el tipo de comunicacion, un dispositivo puede enviar y recibir informacion con diferentes comunicaciones */
		this.comDisp = otroComDisp;
	}
	
	public void setVelocidad(double vel){
		/* Setea la velocidad de transferencia */
		this.velocidad = vel;
	}
	
	public void enviarDatos(String palabra){
		/* Envia los datos mediante el tipo de comunicacion que esta conectado al dispositivo */
		try {
			if (palabra.length() <= 16) {
				Thread.sleep((long) this.velocidad);
				this.comDisp.enviarDatos(palabra);
			}
			else{
				System.out.println("No se pudo enviar el dato supera los 16 bits, vuelva a intentarlo");
			}
		} catch (InterruptedException e) {
			
		}
	}
}
